<template>
  <div>
    <TopFilter :list="topFilterList" :cols="3" :rows="2" labelWidth="100" @filterChange="changeHandle" @onCollapse="collapseHandle"></TopFilter>
    <FilterTable
      ref="table"
      :columns="columns"
      :fetchapi="fetchApi"
      height="140px"
      columnsRef="yfkdjxzkh"
      :params="fetchParams"
      :datakey="'rows'"
      :onColumnsChange="columns => (this.columns = columns)"
      :onRowSelectChange="selectChange"
      :isPagination="true"
      selectionType="single"
    ></FilterTable>
    <div
      :style="{
        position: 'absolute',
        left: 0,
        bottom: 0,
        right: 0,
        zIndex: 9,
        borderTop: '1px solid #e9e9e9',
        padding: '10px 20px',
        background: '#fff',
        textAlign: 'right'
      }"
    >
      <el-button @click="closeDrawer(1)">取 消</el-button>
      <AjaxButton :click="closeDrawer.bind(this, 2)" type="primary" size="small">确定</AjaxButton>
    </div>
  </div>
</template>
<script>
import { getOwnerInfo } from '@/api/customerRepair/customerInfo/ownerVehicleManagement';

import { dictionary } from '@/utils/dictMixin';
export default {
  name: '',
  mixins: [dictionary],
  props: ['customerCode'],
  data() {
    return {
      fetchApi: getOwnerInfo, // 调用接口
      fetchParams: {
        // customerCode: this.customerCode,
        sort: '',
        order: 'asc'
      }, // 调用数据
      topFilterList: this.createTopFilters(),
      columns: this.createTableColumns(),
      selectedRows: []
    };
  },
  mounted() {
    this.BaseTable = this.$refs.table.$refs.pageTable;
  },
  methods: {
    closeDrawer(type) {
      if (type == 1) {
        this.$emit('close', false);
      } else {
        if (!(this.selectedRows && this.selectedRows.length)) return this.$notify.warning({ message: '请至少选择一条数据' });
        this.$emit('change', this.selectedRows);
      }
    },
    createTopFilters() {
      return [
        {
          type: 'INPUT',
          label: '客户编号',
          fieldName: 'ownerNo'
        },
        {
          type: 'INPUT',
          label: '客户姓名',
          fieldName: 'ownerName'
        },
        {
          type: 'INPUT',
          label: '客户手机',
          fieldName: 'mobile'
        }
      ];
    },
    createTableColumns() {
      return [
        // {
        //   title: '操作',
        //   dataIndex: 'column-action',
        //   width: 100,
        //   fixed: 'left',
        //   // disabled={this.editAuth}  编辑按钮级权限 此代码在 <el-button size="mini" type="text" 后写入
        //   render: props => {
        //     return (
        //       <div>
        //         <el-button size="mini" type="text" onClick={() => this.openHandler('editOwner', props.row)}>
        //           编辑
        //         </el-button>
        //         <el-divider direction="vertical" />
        //         <el-button size="mini" type="text" onClick={() => this.openHandler('detailOwner', props.row)}>
        //           明细
        //         </el-button>
        //       </div>
        //     );
        //   }
        // },
        {
          title: '序号',
          dataIndex: 'index',
          width: 70,
          render: props => {
            return <span>{props.row.index + 1}</span>;
          }
        },
        {
          title: '客户性质',
          dataIndex: 'ownerProperty',
          width: 120,
          showOverflowTooltip: true,
          dictItems: this.createDictList(8011),
          render: props => {
            return <span>{this.createDictText(props.row.ownerProperty, 8011)}</span>;
          }
        },
        {
          title: '客户编号',
          dataIndex: 'ownerNo',
          width: 120,
          hidden: true,
          showOverflowTooltip: true
        },
        {
          title: '客户姓名',
          dataIndex: 'ownerName',
          width: 90,
          showOverflowTooltip: true
        },
        {
          title: '性别',
          dataIndex: 'gender',
          width: 90,
          showOverflowTooltip: true,
          render: props => {
            return <span>{this.createDictText(props.row.gender, 8012)}</span>;
          }
        },
        {
          title: '客户电话',
          dataIndex: 'phone',
          showOverflowTooltip: true
        },
        {
          title: '客户手机号',
          dataIndex: 'mobile',
          showOverflowTooltip: true
        },
        {
          title: '证件类型',
          dataIndex: 'ctCode',
          width: 150,
          showOverflowTooltip: true,
          render: props => {
            return <div>{this.createDictText(props.row.ctCode, 8013)}</div>;
          }
        },
        {
          title: '证件号码',
          dataIndex: 'certificateNo',
          width: 130,
          showOverflowTooltip: true
        },

        {
          title: '居住地址',
          dataIndex: 'address',
          width: 150,
          showOverflowTooltip: true
        },

        {
          title: '生日',
          dataIndex: 'birthday',
          width: 100,
          showOverflowTooltip: true
        }
      ];
    },
    // createTopFilters() {
    //   return [
    //     {
    //       type: 'SELECT',
    //       label: '客户类型',
    //       fieldName: 'CUSTOMER_TYPE',
    //       placeholder: '请选择',
    //       itemList: [
    //         { text: '车主', value: '80521001' },
    //         { text: '业务往来客户', value: '80521002' },
    //         { text: '保险公司', value: '80521004' }
    //       ]
    //     },
    //     {
    //       type: 'INPUT',
    //       label: '客户编号',
    //       fieldName: 'customerCode',
    //       placeholder: '请输入...'
    //       // initialValue:this.customerCode
    //     },
    //     {
    //       type: 'INPUT',
    //       label: '客户名称',
    //       fieldName: 'customerName',
    //       placeholder: '请输入...'
    //     },
    //     {
    //       type: 'INPUT',
    //       label: '车牌号',
    //       fieldName: 'license',
    //       placeholder: '请输入...'
    //     }
    //   ];
    // },
    // createTablelist() {
    //   return [
    //     {
    //       title: '序号',
    //       dataIndex: 'index',
    //       sorter: true,
    //       render: props => {
    //         return <span>{props.row.index + 1}</span>;
    //       }
    //     },
    //     {
    //       title: '客户编号',
    //       dataIndex: 'CUSTOMER_CODE',
    //       sorter: true,
    //       filter: true
    //     },
    //     {
    //       title: '客户名称',
    //       dataIndex: 'CUSTOMER_NAME',
    //       sorter: true,
    //       filter: true
    //     },
    //     {
    //       title: '车牌号',
    //       dataIndex: 'LICENSE',
    //       sorter: true,
    //       filter: true
    //     },
    //     {
    //       title: '地址',
    //       dataIndex: 'ADDRESS',
    //       sorter: true,
    //       filter: true,
    //       width: 300
    //     },
    //     {
    //       title: '邮编',
    //       dataIndex: 'ZIP_CODE',
    //       sorter: true,
    //       filter: true
    //     },
    //     {
    //       title: '联系人',
    //       dataIndex: 'CONTACTOR_NAME',
    //       sorter: true,
    //       filter: true,
    //       width: 200
    //     },
    //     {
    //       title: '联系人电话',
    //       dataIndex: 'CONTACTOR_PHONE',
    //       sorter: true,
    //       filter: true
    //     },
    //     {
    //       title: '联系人手机',
    //       dataIndex: 'CONTACTOR_MOBILE',
    //       sorter: true,
    //       filter: true
    //     },
    //     {
    //       title: '客户类型',
    //       dataIndex: 'PRE_PAY_CUS_TYPE',
    //       sorter: true,
    //       filter: true,
    //       filterType: 'checkbox',
    //       filterItems: this.createDictList('8052'),
    //       render: props => {
    //         return <span>{this.createDictText(props.row.PRE_PAY_CUS_TYPE, '8052')}</span>;
    //       }
    //     }
    //   ];
    // },

    changeHandle(val) {
      this.fetchParams = Object.assign({}, val);
    },
    collapseHandle() {
      this.$nextTick(() => {
        this.BaseTable.EXECUTE_RESET_HEIGHT();
      });
    },
    // 选中
    selectChange(rows) {
      this.selectedRows = rows;
    }
  }
};
</script>
